Provable STM Properties: Leveraging Clock and Locks to Favor Commit and Early Abort

نویسندگان

  • Damien Imbs
  • Michel Raynal
چکیده

The aim of a Software Transactional Memory (STM) is to discharge the programmers from the management of synchronization in multiprocess programs that access concurrent objects. To that end, a STM system provides the programmer with the concept of a transaction: each sequential process is decomposed into transactions, where a transaction encapsulates a piece of code accessing concurrent objects. A transaction contains no explicit synchronization statement and appears as if it has been executed atomically. Due to the underlying concurrency management, a transaction commits or aborts. The major part of papers devoted to STM systems address mainly their efficiency. Differently, this paper focuses on an orthogonal issue, namely, the design and the statement of a safety property. The only safety property that is usually considered is a global property involving all the transactions (e.g., conflictserializability or opacity) that expresses the correction of the whole execution. Roughly speaking, these consistency properties do not prevent a STM system from aborting all the transactions. The proposed safety property, called obligation, is on each transaction taken individually. It specifies minimal circumstances in which a STM system must commit a transaction T . The paper proposes and investigates such an obligation property. Then, it presents a STM algorithm that implements it. This algorithm, which is based on a logical clock and associates a lock with each shared object, is formally proved correct. Key-words: Atomic operation, Commit/abort, Concurrency control, Consistent global state, Lock, Opacity, Shared object, Software transactional memory, Transaction.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A simple proof system for lock-free concurrency

The use of locking is the classical approach to prevent interference in concurrent access to shared data structures. Using locks it is not difficult to ensure data consistency (a safety property) and deadlockfreedom (a liveness property). Many sophisticated implementation and reasoning techniques for lockbased concurrent programming have been developed over some decades. Lock-based synchronizat...

متن کامل

Partial Strictness in Two-Phase Locking

Two-phase locking is a standard method for managing concurrent transactions in database systems. In order to guarantee good recovery properties, two-phase locking should be strict, meaning that locks can be released only after the transaction's commit or abort. In this paper we show that even exclusive locks can be released immediately after the commit request has arrived, without sacriicing an...

متن کامل

Transactional Locking II

The transactional memory programming paradigm is gaining momentum as the approach of choice for replacing locks in concurrent programming. This paper introduces the transactional locking II (TL2) algorithm, a software transactional memory (STM) algorithm based on a combination of commit-time locking and a novel global version-clock based validation technique. TL2 improves on state-of-the-art ST...

متن کامل

adaptSTM - An Online Fine-grained Adaptive STM System

Transactional memory (TM) is an attractive platform for parallel programs, and several software transactional memory (STM) designs have been presented. Here we explore several optimization opportunities to adapt to the running program and to adapt parameters that are optimized for the average case. Depending on the program the transactional load can vary per thread (e.g., client/server threads)...

متن کامل

An Argument in Favor of the Presumed Commit Protocol

We argue in favor of the presumed commit protocol by proposing two new presumed commit variants that significantly reduce the cost of logging activities associated with the original presumed commit protocol. Furthermore, for read-only transactions, we apply our unsolicited updatevote optimizationand show that the cost associated with this type of transactions is the same in both presumed commit...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009